class Cat:
    def eat(self):
        """
        小猫类的吃方法
        """
        print("%s 爱吃鱼" % self.name)

    def drink(self):
        print("小猫爱喝水")


tom_cat = Cat()
tom_cat.eat()  # 这里报错的原因是：上面创建了tom_cat对象，然后在执行eat()方法的时候，name属性还没有加上，导致报错
tom_cat.drink()
tom_cat.name = "Tom"

print(tom_cat)  # 打印tom的内存地址(十六进制)
addr = id(tom_cat)
print("%d" % addr)
print("%x" % addr)

# 给对象增加属性(不推荐使用， 推荐)
tom_cat.name = "Tom猫"
tom_cat.age = 11
tom_cat.gender = True

print(tom_cat.name)
print(tom_cat.age)
print(tom_cat.gender)
